Businesses are experiencing an ever-increasing trend to achieve higher utilization of computing resources. Companies that provide their own IT computing services are being driven to find ways to decrease costs by increasing utilization. Moreover, companies that provide these services are being driven to reduce overhead and become more competitive by increasing utilization of these resources. Numerous studies over the past decade have shown that typical utilization levels of computing resources within service delivery centers, raised floors, and data centers fall between 20% and 80%. This leaves a tremendous amount of white space with which to improve utilization and drive costs down.
One reason this large amount of white space of under-utilized equipment exists is that most applications which run on these computing resources have service level agreements (SLAs) which define a certain minimum level of performance which that application can expect. An SLA will also define a penalty incurred by the provider or software delivery center (SDC) organization if those service levels are ever violated. To avoid these costly penalties, service providers will typically over-provision the hardware assigned to the applications in question. Common practice within the industry is to define these static SLAs, their associated penalties for missed performance, as well as contract length, and then get bids from various providers. All things being equal, those service providers with the lowest cost for that SLA will get the business.
Today's Information Technology (IT) landscape introduces new technologies that virtualizes computing resources, and are designed to improve this situation. Virtualization involves technologies like the Virtualization Engine, Enterprise Workload Manager, and Partition Workload Manager which are commercially available from IBM Corp. of Armonk, N.Y. (Virtualization Engine, Enterprise Workload Manager, Partition Workload Manager, and IBM are trademarks of IBM Corp. in the United States and/or other countries). Such technologies basically allow computing resources such as processing cycles, Memory, and Input/Output (I/O) to be reassigned from one logical server to another in an on-demand fashion. Virtualization then allows for computing resources to be dynamically reassigned to the servers or applications which need it, at that time when they need it. Such recent virtualization introductions bring an opportunity to redefine how applications and businesses can receive the most appropriate service for the least cost, providing services only when and where they are needed.
Many organizations today provision computing resources for peak capacity. In other words, they provision enough resources to meet an SLA for the period of time they expect the highest load (demand) on the system. This produces a highly inefficient utilization of IT resources but does guarantee the ability to meet an SLA. Other organizations will profile applications to determine at which times of the day, days of the week, or days of the year they might expect peak capacity needs. For example, a human resources (HR) application might only get used at the end or beginning of the year, a retail inventory system might get its highest use between Thanksgiving and Christmas, a financial tool might get its highest use at the end of every month or quarter. After profiling applications, an organization can then combine applications with non-overlapping peak periods onto the same computing resources or servers so that they can consume more of the white space and thus increase their utilization, while maintaining a reasonable expectation of meeting the SLAs for the combination of applications on that physical resource.
Still other organizations use virtualization technologies to dynamically adjust computing resources from one application server or logical partition to another application server. This scaling of hardware resources to meet software application demands can be done vertically or horizontally. Dynamic Vertical scaling is accomplished with technologies like Enterprise Workload Manager (EWLM), Product Lifecycle Management (PLM), and hypervisors such as: (1) Xen, which is commercially available from XenSource, Inc. of Palo Alto, Calif.; (2) Trango, which is commercially available from Trango Systems of Grenoble, France; and (3) VMware, which is commercially available from IBM Corp. of Armonk, N.Y. (each of these products are trademarks of their respective commercial sources in the United States and/or other countries). Such technologies use policy-based business goals to assign priorities to applications, and adjust resources according to importance levels and transactional performance. Horizontal scaling can be accomplished with software technologies like IBM's WebSphere XD and Tivoli Intelligent Orchestrator, which will provision additional servers and add them to computing clusters to address an increased application load (WebSphere, WebSphere XD, Tivoli, and Tivoli Intelligent Orchestrator are trademarks of IBM Corp. in the United States and/or other countries).
A problem that is yet unaddressed with existing known technologies is that SLAs are still a static entity, with very little flexibility to change. This is particularly obvious when contrasted to computing resources, which in turn have an extremely high degree of flexibility to dynamic change. Using today's technology, a service provider can only statically set the business goals for a portfolio of applications and once set, there is no mechanism to dynamically change the service levels according to the application owners' requirements.